/* Виджет - поиск по урокам тренинга */
$(() => {
	//Механизм поиска
	let allLessonsData = [];
	$('.search__result').hide();
	
	$('.search_lessons li').each((i, lesson) => {
		let lessonID = $(lesson).attr('data-lesson-id');
		let lessonTitle = $(lesson).find('.title').html().split('<span')[0].replace(/[\n\t]+/g, '');
		let lessonDescr = $(lesson).find('.description').text().replace(/[\n\t]+/g, '');
		
		allLessonsData[i] = [lessonID, lessonTitle, lessonDescr];
	})
	
	$('.search__form input').keypress(function() {
		if(event.keyCode==13) {
			lessonSearch($('.search__form input').val().toLowerCase());
		}
	})
	
	$('.search__button').on('click', function() {
		lessonSearch($('.search__form input').val().toLowerCase());
	})
	

	function lessonSearch(searchValue) {
		if(searchValue.length > 2) {
			
			$('.search__result').hide().empty();

			$('.gc-main-content').on('click', function() {
				$('.search__result').show().empty();
				
				$('.search__button').on('click', function() {
					event.stopPropagation();
				})
				
				$('.search__result').hide().empty();
			})
			
			const results = allLessonsData.filter(item => 
	        item[1].toLowerCase().includes(searchValue) || item[2].toLowerCase().includes(searchValue)
	    );

	    if (results.length > 0) {
	    	
	    	results.forEach(result => {
	    		$('.search__result').append(`
	    			<div class="result-item">
	    				<a href="/pl/teach/control/lesson/view?id=${result[0]}">${result[1]}</a>
	    			</div>
	    		`);
	    	})
	    	
	    	$('.search__result').show();
	    	
	    } else {
	    	
	    	$('.search__result').show().text('Ничего не найдено');
	    	
	    }
		}
	}
})